Variational inference and learning for segmental switching state space models of hidden speech dynamics

ABSTRACT

A system and method that facilitate modeling unobserved speech dynamics based upon a hidden dynamic speech model in the form of segmental switching state space model that employs model parameters including those describing the unobserved speech dynamics and those describing the relationship between the unobserved speech dynamic vector and the observed acoustic feature vector is provided. The model parameters are modified based, at least in part, upon, a variational learning technique. In accordance with an aspect of the present invention, novel and powerful variational expectation maximization (EM) algorithm(s) for the segmental switching state space models used in speech applications, which are capable of capturing key internal (or hidden) dynamics of natural speech production, are provided. For example, modification of model parameters can be based upon an approximate mixture of Gaussian (MOG) posterior and/or based upon an approximate hidden Markov model (HMM) posterior using a variational technique.

TECHNICAL FIELD

[0001] The present invention relates generally to systems and methods for recovering or recognizing the phone or word sequence from the acoustic data of speech, and, more particularly to variational inference and learning applied to segmental switching state space models of hidden speech dynamics that is used to do phone or word recognition.

BACKGROUND OF THE INVENTION

[0002] The goal of human speech production is to convey discrete linguistic symbols corresponding to the intended message, while the actual speech signal is produced by the continuous and smooth movement of the articulators with lots of temporal structures. This seemingly contradictory dual nature (discrete vs. continuous) of speech can be amazingly utilized by human speech recognizers in a beneficial way to enhance the decoding of the underlying message from acoustic signals. However, so far this has been a serious challenge for acoustic modeling in both scientific research and practical applications.

[0003] The conventional hidden Markov models (HMMs) used in the state-of-the-art speech technology, albeit putting enough emphasis on the symbolic nature of speech, have long been recognized to model the temporal dynamics very poorly, which result in some inherent weaknesses of the current speech technology built upon it. Efforts have since been made to improve the modeling of temporal dynamics and the ultimate goal is to turn the coarticulation behavior in natural speech from a curse (as in current speech technology) to a blessing. Currently there are two general trends in the speech research community to reach this goal: one is to extend upon HMM to better account for the temporal dynamics in acoustic signals directly, the other is to use some kind of hidden dynamics, abstract or physically meaningful, to account for the temporal dynamics and subsequently map it to the acoustic domain. The HMM extensions typically enjoy the benefit of being able to use the standard HMM training and test algorithms with some generalization, but have more model parameters and need more computation. The temporal dynamics at the surface acoustic level is also very noisy and difficult to extract. The hidden dynamic models (HDMs) are able to directly model the underlying dynamics with a parsimonious set of parameters and closer to the models developed in speech science, but they typically require the derivation of new training and test algorithms with various degrees of difficulty.

[0004] By way of additional background, in speech recognition systems, an input speech signal is converted into words that represent the verbal content of the speech signal. This conversion begins by converting the analog speech signal into a series of digital values. The digital values are then passed through a feature extraction unit, which computes a sequence of feature vectors based on the digital values. Each feature vector represents a section of the speech signal.

[0005] The feature vectors can represent any number of available features extracted through known feature extraction methods such as Linear Predictive Coding (LPC), LPC derived cepstrum, Perceptive Linear Prediction (PLP), Auditory model, and Mel-Frequency Cepstrum Coefficients (MFCC).

[0006] The feature vectors are then applied to an acoustic model that describes the probability that a feature vector was produced by a particular word, phoneme, or senone. Based on a sequence of these probabilities, a decoder identifies a most likely word sequence for the input speech signal.

SUMMARY OF THE INVENTION

[0007] The following presents a simplified summary of the invention in order to provide a basic understanding of some aspects of the invention. This summary is not an extensive overview of the invention. It is not intended to identify key/critical elements of the invention or to delineate the scope of the invention. Its sole purpose is to present some concepts of the invention in a simplified form as a prelude to the more detailed description that is presented later.

[0008] The present invention provides for a system and method that facilitate modeling speech dynamics based upon a speech model, called the segmental switching state space model, that employs model parameters that characterize some aspects of the human speech articulation process. These model parameters are modified based, at least in part, upon, a variational learning technique.

[0009] In accordance with an aspect of the present invention, novel and powerful variational expectation maximization (EM) algorithm(s) for the segmental switching state space models used in speech applications, which are capable of capturing key internal (or hidden) dynamics of natural speech production are provided. Hidden dynamic models (HDMs) have recently become a class of promising acoustic models to incorporate crucial speech-specific knowledge and overcome many inherent weaknesses of traditional HMMs. However, the lack of powerful and efficient statistical learning algorithms is one of the main obstacles preventing them from being well studied and widely used. Since exact inference and learning are intractable, a variational approach is taken to develop effective approximate algorithms. The present invention implements the segmental constraint crucial for modeling speech dynamics and provides algorithms for recovering hidden speech dynamics and discrete speech units from acoustic data only. Further, the effectiveness of the algorithms developed are verified by experiments on simulation and Switchboard speech data.

[0010] To the accomplishment of the foregoing and related ends, certain illustrative aspects of the invention are described herein in connection with the following description and the annexed drawings. These aspects are indicative, however, of but a few of the various ways in which the principles of the invention may be employed and the present invention is intended to include all such aspects and their equivalents. Other advantages and novel features of the invention may become apparent from the following detailed description of the invention when considered in conjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0011]FIG. 1 is a block diagram of a system that facilitates modeling speech dynamics in accordance with an aspect of the present invention.

[0012]FIG. 2 is a graphical representation of conditional independence relations of the model in accordance with an aspect of the present invention.

[0013]FIG. 3 depicts exemplary simulation training data in accordance with an aspect of the present invention.

[0014]FIG. 4 depicts hidden dynamic recovery for the simulation data of FIG. 2 in accordance with an aspect of the present invention.

[0015]FIG. 5 depicts hidden dynamics recovery for training data in accordance with an aspect of the present invention.

[0016]FIG. 6 depicts the hidden dynamics recovery for test data in accordance with an aspect of the present invention.

[0017]FIG. 7 is a flow chart of a method that facilitates modeling speech dynamics in accordance with an aspect of the present invention.

[0018]FIG. 8 is a flow chart of a method that facilitates modeling speech dynamics in accordance with an aspect of the present invention.

[0019]FIG. 9 is a flow chart of a method that facilitates modeling speech dynamics in accordance with an aspect of the present invention.

[0020]FIG. 10 illustrates an example operating environment in which the present invention may function.

DETAILED DESCRIPTION OF THE INVENTION

[0021] The present invention is now described with reference to the drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It may be evident, however, that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to facilitate describing the present invention.

[0022] As used in this application, the term “computer component” is intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software in execution. For example, a computer component may be, but is not limited to being, a process running on a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a server and the server can be a computer component. One or more computer components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers.

[0023] Referring to FIG. 1, a system 100 that facilitates modeling speech dynamics in accordance with an aspect of the present invention is illustrated. The system 100 models speech dynamics based upon a speech model that employs model parameters including the parameters which characterize aspects of the unobserved dynamics in speech articulation and the parameters which characterize the mapping relationship from the unobserved dynamic variables to the observed speech acoustics. The model parameters are modified based, at least in part, upon a variational learning technique.

[0024] The system 100 can utilize powerful variational expectation maximization (EM) algorithm(s) for the segmental switching state space models used in speech applications, which are capable of capturing key internal (or hidden) dynamics of natural speech production are provided. The system 100 overcomes inherent weakness of traditional HMMs by employing efficient statistical learning algorithm(s). Since exact inference and learning are intractable, in accordance with an aspect of the present invention, the system 100 utilizes a variational approach is taken to develop effective approximate algorithms. Thus, the system can implement the segmental constraint crucial for modeling speech dynamics and provides algorithms for recovering hidden speech dynamics and discrete speech units from acoustic data only.

[0025] The system 100 includes an input component 110 that receives acoustic data. For example, the input component 110 can convert an analog speech signal into a series of digital values. The system further includes a model component 120 that models speech. The model component 120 receives the acoustic data from the input component 110. The model component 120 then recovers speech from the acoustic data based, at least in part, upon a model having model parameters including the parameters which characterize aspects of the unobserved dynamics in speech articulation and the parameters which characterize the mapping relationship from the unobserved dynamic variables to the observed speech acoustics. The model parameters are modified based, at least in part, upon a variational learning technique as discussed below.

[0026] In one example, the model component 120 employs an HDM in a form of switching state-space models for speech applications. The state equation and observation equation are defined to be:

x _(n) =A _(s) x _(n−1)+(I−A _(s))u _(s) +w,   (1)

y _(n) =C _(s) x _(n) +c _(s) +v,   (2)

[0027] where n and s are frame number and phone index respectively, x is the hidden dynamics and y is the acoustic feature vector (such as MFCC). For example, the hidden dynamics can be chosen to be the articulatory variables, or to be the variables for the vocal-tract-resonances (VTRs) which are closely related to the smooth and target-oriented movement of the articulators. The state equation (1) is a linear dynamic equation with phone dependent system matrix A_(s) and target vector u_(s) and with build-in continuity constraint across the phone boundaries. The observation equation (2) represents a phone-dependent VTR-to-acoustic linear mapping. The choice of linear mapping is mainly due to the difficulty of algorithm development. The resulting algorithm can also be generalized to mixtures of linear mapping and piece-wise linear mapping within a phone. Further, Gaussian white noises w and v can be added to both the state and observation equations to make the model probabilistic. C and c represent the parameters responsible for the mapping from the VTRs to the acoustic feature vector.

[0028] To facilitate algorithm development, the HDM is also expressed in terms of probability distributions:

p(s _(n) =s|s _(n−1) =s′)=π_(s′s),

p(x _(n) |s _(n) =s,x _(n−1))=N(x _(n) |A _(s) x _(n−1) +a _(s) ,B _(s)),

p(y _(n) |s _(n) =s,x _(n))=N(y _(n) |C _(s) x _(n) +c _(s) ,D _(s)),   (3)

[0029] where π_(s′s) is the phone transition probability matrix, a_(s)=(I−A_(x))u_(s) and N denotes a Gaussian distribution with mean and precision matrix (inverse of the covariance matrix) as the parameters, and, D represents the duration parameter(s). The joint distribution over the entire time sequence is given by $\begin{matrix} {{p\left( {y_{1:N},x_{1:N},s_{1:N}} \right)} = {\prod\limits_{n}^{\quad}{{p\left( {\left. y_{n} \middle| s_{n} \right.,x_{n}} \right)}{p\left( {\left. x_{n} \middle| s_{n} \right.,x_{n - 1}} \right)}{{p\left( s_{n} \middle| s_{n - 1} \right)}.}}}} & (4) \end{matrix}$

[0030] The conditional independence relations of the model can be seen more clearly from a graphic form (Bayesian network) as shown in FIG. 2.

Model Inference and Learning

[0031] Inference refers to the calculation of posterior distribution p(s_(1:N), x_(1:N)|γ_(1:N)) (where s_(1:N)=s₁, s₂, . . . s_(N) is a sequence of phones of length N) given all model parameters, while learning refers to the estimation of model parameters θ={A_(1:S), a_(1:S), B_(1:S), C_(1:S), c_(1:S), D_(1:S)} given the complete distribution, usually in a maximum likelihood (ML) sense. Under the expectation-maximization (EM) framework, inference is the E step and learning is the M step. With regard to the system 100, however, the posterior of the model turns out to be a Gaussian mixture whose number of components is exponential in the total number of frames, and is therefore computationally intractable.

[0032] Thus, in accordance with an aspect of the present invention, an approximation is employed. In one example, a mixture of Gaussian (MOG) posterior based on variational technique(s) is employed as an approximation. In another example, a hidden Markov model (HMM) posterior based on variational techniques is employed as an approximation. Those skilled in the art will recognize that the present invention is not limited to approximations employing MOG and/or HMM posteriors. Thus, any suitable approximation technique employing the switching state space model can be employed in the system 100.

[0033] The idea is to choose the approximate posterior q to approximate the true posterior p(s_(1:N), x_(1:N)|y_(1:N))) with a sensible and tractable structure and optimize it by minimizing its Kullback-Liebler (KL) distance to the exact posterior. It turns out that this optimization can be performed efficiently without having to compute the exact (but intractable) posterior.

[0034] In one example, in contrast to previous approaches, the system 100 uses soft phone assignments that are estimated under a unified EM framework; however, the approximation doesn't factorize s from x and results in a multimodal posterior over x instead of a unimodal one, which is justifiably more suitable for speech applications.

MOG Posterior

[0035] As discuss previously, in one example, the system 100 employs an approximation based, at least in part, upon a mixture of Gaussian (MOG) posterior. Under this approximation q is restricted to be: $\begin{matrix} {{{q\left( {s_{1:N},x_{1:N}} \right)} = {\prod\limits_{n}{{q\left( x_{n} \middle| s_{n} \right)}{q\left( s_{n} \right)}}}},} & (5) \end{matrix}$

[0036] For purposes of brevity, the dependence of the q's on the observation y is omitted but always implied.

[0037] Minimizing the KL divergence between q and p is equivalent to maximizing the following functional F, $\begin{matrix} {{F\lbrack q\rbrack} = {\sum\limits_{s_{1:N}}{\int\quad {{x_{1:N}}{{q\left( {s_{1:N},x_{1:N}} \right)} \cdot {\quad{\left\lbrack {{\log \quad {p\left( {y_{1:N},x_{1:N},s_{1:N}} \right)}} - {\log \quad {q\left( {s_{1:N},x_{1:N}} \right)}}} \right\rbrack,}}}}}}} & (6) \end{matrix}$

[0038] which is also a lower bound of the likelihood function and will be subsequently used as the objective function in the learning (M) step.

[0039] By taking calculus of variation to optimize F with respect to q(x_(n)|s_(n)) and q(s_(n)), it turns out that each component q(x_(n)|s_(n)) follows a Gaussian distribution:

q(x _(n) |s _(n) =s)=N(x _(n)|ρ_(s,n),Γ_(s,n)),   (7)

[0040] and the parameters ρ_(s,n) and Γ_(s,n) are given by $\begin{matrix} {{\Gamma_{s,n} = {{C_{s}^{T}D_{s}C_{s}} + B_{s} + {\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n + 1}}A_{s^{\prime}}^{T}B_{s^{\prime}}A_{s^{\prime}}}}}},} & (8) \\ {{{\Gamma_{s,n}\rho_{s,n}} = {{B_{s}\left( {{A_{s}{\sum\limits_{s^{\prime}}{\gamma_{{s^{\prime}n} - 1}\rho_{s^{\prime},{n - 1}}}}} + a_{s}} \right)} + {\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n + 1}}A_{s^{\prime}}^{T}{B_{s^{\prime}}\left( {\rho_{s^{\prime},{n + 1}} - a_{s^{\prime}}} \right)}}} + {C_{s}^{T}{D_{s}\left( {y_{n} - c_{s}} \right)}}}},} & (9) \end{matrix}$

[0041] where γ_(s,n)=q(s_(n)=s) and is computed from $\begin{matrix} {{\log \quad \gamma_{s,n}} = {{f_{1}\left( {\rho_{s,n},\Gamma_{s,n},\Theta} \right)} + {f_{2}\left( {\rho_{s^{\prime},{n - 1}},\Gamma_{s^{\prime},{n - 1}},\Theta} \right)} + {{f_{3}\left( {\rho_{s^{\prime},{n + 1}},\Gamma_{s^{\prime},{n + 1}},\Theta} \right)}.}}} & (10) \\ {{f_{1} = {\frac{1}{2}\left\{ {\left. \log \middle| \frac{D_{s}}{2\pi} \middle| {- \log} \middle| \frac{\Gamma_{s,n}}{2\pi} \middle| {- {< {C_{s}^{T}D_{s}C_{s}}}} \right.,{{\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}} > {{{- 2}\left( {c_{s} - y_{n}} \right)^{T}D_{s}C_{s}\rho_{s,n}} - {\left( {c_{s} - y_{n}} \right)^{T}{D_{s}\left( {c_{s} - y_{n}} \right)}} +} < \Gamma_{s,n}},\left. {{\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}} > {{{- \rho_{s,n}^{T}}\Gamma_{s,n}\rho_{s,n}} + \log}} \middle| \frac{B_{s}}{2\pi} \middle| {- {< B_{s}}} \right.,{{\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}} > {{{+ 2}a_{s}^{T}B_{s}\rho_{s,n}} - {a_{s}^{T}B_{s}a_{s}}}}} \right\}}},} & (11) \\ {{f_{2} = {\frac{1}{2}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\left\{ {{- {< {A_{s}^{T}B_{s}A_{s}}}},{{\Gamma_{s^{\prime},{n - 1}}^{- 1} + {\rho_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}^{T}}} > {{{- 2}\left( {a_{s} - \rho_{s,n}} \right)^{T}B_{s}A_{s}\rho_{s^{\prime},{n - 1}}} + {2\log \quad \pi_{s^{\prime}s}}}}} \right\}}}}},} & (12) \\ {{f_{3} = {\frac{1}{2}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n + 1}}\left\{ {\left. \log \middle| \frac{B_{s^{\prime}}}{2\pi} \middle| {- {< {A_{s^{\prime}}^{T}B_{s^{\prime}}A_{s^{\prime}}}}} \right.,{{\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}} > {{{- 2}\left( {a_{s^{\prime}} - \rho_{s^{\prime},{n + 1}}} \right)^{T}B_{s^{\prime}}A_{s^{\prime}}\rho_{s,n}} -} < B_{s^{\prime}}},{{\Gamma_{s^{\prime},{n + 1}}^{- 1} + {\rho_{s^{\prime},{n + 1}}\rho_{s^{\prime},{n + 1}}^{T}}} > {{{+ 2}a_{s^{\prime}}^{T}B_{s^{\prime}}\rho_{s^{\prime},{n + 1}}} - {a_{s^{\prime}}^{T}B_{s^{\prime}}a_{s^{\prime}}} + {2\log \quad \pi_{{ss}^{\prime}}}}}} \right\}}}}},} & (13) \end{matrix}$

[0042] where <> denotes the element-wise product of two equal-size vectors or matrices.

[0043] Equations (8) and (9) are coupled linear equations given model parameters θ and γ's can be solved efficiently by sparse matrix techniques. Equation (10) is a nonlinear equation by itself and is solved by iteration. Equations (8), (9) and (10) constitutes the inference or E step of the algorithm and are solved iteratively (e.g., all together after some proper initializations). Model learning involves taking derivatives of F with respect to the model parameters (e.g., all) and setting them to zero. This results in a set of linear equations which can be solved easily. Since this step is standard as to EM approaches with no special difficulties, the detail equations are omitted for purposes of brevity. $\begin{matrix} {A_{s} = {\left\lbrack {{\frac{1}{\sum\limits_{n}\gamma_{s,n}}\left( {\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}} \right)\left( {\sum\limits_{n}{\gamma_{s,n}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}}} \right)^{T}} - {\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}^{T}}}}}} \right\rbrack.\left\lbrack {{\frac{1}{\sum\limits_{n}\gamma_{s,n}}\left( {\sum\limits_{n}{\gamma_{s,n}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}}} \right)\left( {\sum\limits_{n}{\gamma_{s,n}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}}} \right)^{T}} - {\sum\limits_{n}{\gamma_{s,n}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\left( {\Gamma_{s^{\prime},{n - 1}}^{- 1} + {\rho_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}^{T}}} \right)}}}}} \right\rbrack^{- 1}}} & (14) \\ {{a_{s} = {\frac{1}{\sum\limits_{n}\gamma_{s,n}}\left( {{\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}} - {A_{s}{\sum\limits_{n}{\gamma_{s,n}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}}}}} \right)}},} & (15) \\ {{B_{s}^{- 1} = {{\frac{1}{\sum\limits_{n}\gamma_{s,n}}\left\{ {{\sum\limits_{n}{\gamma_{s,n}\left( {\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}} \right)}} - {\left\lbrack {\sum\limits_{n}{\gamma_{s,n}{\rho_{s,n}\left( {\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}} \right)}^{T}}} \right\rbrack A_{s}^{T}} - {\left( {\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}} \right)a_{s}^{T}} - {A_{s}\left\lbrack {\sum\limits_{n}{{\gamma_{s,n}\left( {\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}} \right)}\rho_{s,n}^{T}}} \right\rbrack} + {{A_{s}\left\lbrack {\sum\limits_{n}{\gamma_{s,n}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\left( {\Gamma_{s^{\prime},{n - 1}}^{- 1} + {\rho_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}^{T}}} \right)}}}} \right\rbrack}A_{s}^{T}} + {{A_{s}\left( {\sum\limits_{n}{\gamma_{s,n}{\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}}} \right)}a_{s}^{T}} - {a_{s}\left( {\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}} \right)}^{T} + {{a_{s}\left\lbrack {\sum\limits_{n}{\gamma_{s,n}\left( {\sum\limits_{s^{\prime}}{\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}} \right)}^{T}} \right\rbrack}A_{s}^{T}}} \right\}} + {a_{s}a_{s}^{T}}}},} & (16) \\ {{C_{s} = {\left\lbrack {{\frac{1}{\sum\limits_{n}\gamma_{s,n}}\left( {\sum\limits_{n}{\gamma_{s,n}y_{n}}} \right)\left( {\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}} \right)^{T}} - {\sum\limits_{n}{\gamma_{s,n}y_{n}\rho_{s,n}^{T}}}} \right\rbrack \cdot \left\lbrack {{\frac{1}{\sum\limits_{n}\gamma_{s,n}}\left( {\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}} \right)\left( {\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}} \right)^{T}} - {\sum\limits_{n}{\gamma_{s,n}\left( {\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}} \right)}}} \right\rbrack^{- 1}}},} & (17) \\ {{c_{s} = {\frac{1}{\sum\limits_{n}\gamma_{s,n}}\left( {{\sum\limits_{n}{\gamma_{s,n}y_{n}}} - {C_{s}{\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}}}} \right)}},} & (18) \\ {D_{s}^{- 1} = {{\frac{1}{\sum\limits_{n}\gamma_{s,n}}\left\{ {{\sum\limits_{n}{\gamma_{s,n}y_{n}y_{n}^{T}}} - {\left( {\sum\limits_{n}{\gamma_{s,n}y_{n}\rho_{s,n}^{T}}} \right)C_{s}^{T}} - {\left( {\sum\limits_{n}{\gamma_{s,n}y_{n}}} \right)c_{s}^{T}} - {C_{s}\left( {\sum\limits_{n}{\gamma_{s,n}y_{n}\rho_{s,n}^{T}}} \right)}^{T} + {{C_{s}\left\lbrack {\sum\limits_{n}{\gamma_{s,n}\left( {T_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}} \right)}} \right\rbrack}C_{s}^{T}} + {{C_{s}\left( {\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}} \right)}c_{s}^{T}} + {c_{s}\left( {\sum\limits_{n}{\gamma_{s,n}y_{n}}} \right)}^{T} + {{c_{s}\left( {\sum\limits_{n}{\gamma_{s,n}\rho_{s,n}}} \right)}^{T}C_{s}^{T}}} \right\}} + {c_{s}{c_{s}^{T}.}}}} & (19) \end{matrix}$

HMM Posterior

[0044] As discuss previously, in another example, the system 100 employs an approximation based, at least in part, upon an HMM posterior. Under this approximation q is taken to be $\begin{matrix} {{q\left( {s_{1:N},x_{1:N}} \right)} = {\prod\limits_{n = 1}^{N}{{q\left( x_{n} \middle| s_{n} \right)} \cdot {\prod\limits_{n = 2}^{N}{{q\left( s_{n} \middle| s_{n - 1} \right)} \cdot {{q\left( s_{1} \right)}.}}}}}} & (20) \end{matrix}$

[0045] First, two posterior transition probabilities are defined: $\begin{matrix} {{\eta_{{s^{\prime}s},n} = {q\left( {s_{n} = {\left. s \middle| s_{n - 1} \right. = s^{\prime}}} \right)}},{{\overset{\_}{\eta}}_{{s^{\prime}s},n} = {{q\left( {s_{n} = {\left. s \middle| s_{n + 1} \right. = s^{\prime}}} \right)} = \frac{\eta_{{s^{\prime}s},{n + 1}}\gamma_{s,n}}{\gamma_{s^{\prime},{n + 1}}}}},} & (21) \end{matrix}$

[0046] where γ_(s,n) is defined to be the same as in the previous section. It turns out that each q(x_(n)|s_(n)) is again a Gaussian distribution, and ρ_(s,n) and Γ_(s,n) are given by coupled linear equations having the same form as Equations (8) and (9), except that the γ's are replaced by η's and {overscore (η)}'s. These equations can again be solved by sparse matrix techniques. The γ's and η's themselves can be solved by the following efficient backward-forward procedure given the model parameters and all the ρ's and Γ′s:

[0047] 1. Initialize: z_(s,N+1)=1 for all s.

[0048] 2. Backward pass: for n=N, . . . , 2 $\begin{matrix} {{z_{s,n} = {\sum\limits_{s^{\prime}}{{\exp \left( f_{{ss}^{\prime},n} \right)}z_{s^{\prime},{n + 1}}}}},{\eta_{{ss}^{\prime},n} = {\frac{1}{z_{s,n}}{\exp \left( f_{{ss}^{\prime},n} \right)}z_{s^{\prime},{n + 1}}}}} & (22) \end{matrix}$

[0049] 3. For n=1: $\begin{matrix} {{z_{1} = {\sum\limits_{s}{{\exp \left( f_{s,1} \right)}z_{s,2}}}},{\gamma_{s,1} = {\frac{1}{z_{1}}{\exp \left( f_{s,1} \right)}{z_{s,2}.}}}} & (23) \end{matrix}$

[0050] 4. Forward pass: for n=2, . . . , N $\begin{matrix} {\gamma_{s,n} = {\sum\limits_{s^{\prime}}^{\quad}\quad {\eta_{{s^{\prime}s},n}{\gamma_{s^{\prime},{n - 1}}.}}}} & (24) \\ {f_{{s^{\prime}s},n} = {\frac{1}{2}\left\{ {{\log {\frac{D_{s}}{2\pi}}} - {\langle{{C_{s}^{T}D_{s}C_{s}},{\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}}}\rangle} -} \right.}} & (25) \\ {\quad {{2\left( {c_{s} - y_{n}} \right)^{T}D_{s}C_{s}\rho_{s,n}} - {\left( {c_{s} - y_{n}} \right)^{T}{D_{s}\left( {c_{s} - y_{n}} \right)}} -}} & \quad \\ {\quad {{\log {\frac{\Gamma_{s,n}}{2\pi}}} + {\langle{\Gamma_{s,n},{\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}}}\rangle} - {\rho_{s,n}^{T}\Gamma_{s,n}\rho_{s,n}} + {\log {\frac{B_{s}}{2\pi}}} -}} & \quad \\ {\quad {{\langle{{A_{s}^{T}B_{s}A_{s}},{\Gamma_{s^{\prime},{n - 1}}^{- 1} + {\rho_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}^{T}}}}\rangle} -}} & \quad \\ {\quad {{2\left( {a_{s} - \rho_{s,n}} \right)^{T}B_{s}A_{s}\rho_{s^{\prime},{n - 1}}} - {\langle{B_{s},{\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}}}\rangle}}} & \quad \\ {\left. \quad {{2a_{s}^{T}B_{s}\rho_{s,n}} - {a_{s}^{T}B_{s}a_{s}} + {2\quad \log \quad \pi_{s^{\prime}s}}} \right\},} & \quad \\ {f_{s,1} = {\frac{1}{2}\left\{ {{\log {\frac{D_{s}}{2\pi}}} - {\langle{{C_{s}^{T}D_{s}C_{s}},{\Gamma_{s,1}^{- 1} + {\rho_{s,1}\rho_{s,1}^{T}}}}\rangle} -} \right.}} & (26) \\ {\quad {{2\left( {c_{s} - y_{1}} \right)^{T}D_{s}C_{s}\rho_{s,1}} - {\left( {c_{s} - y_{1}} \right)^{T}{D_{s}\left( {c_{s} - y_{1}} \right)}} -}} & \quad \\ {\quad {{\log {\frac{\Gamma_{s,1}}{2\pi}}} + {\langle{\Gamma_{s,1},{\Gamma_{s,1}^{- 1} + {\rho_{s,1}\rho_{s,1}^{T}}}}\rangle} - {\rho_{s,1}^{T}\Gamma_{s,1}\rho_{s,1}} + {\log {\frac{B_{s}}{2\pi}}} -}} & \quad \\ {\left. \quad {{\langle{B_{s},{\Gamma_{s,1}^{- 1}\rho_{s,1}\rho_{s,1}^{T}}}\rangle} + {2a_{s}^{T}B_{s}\rho_{s,1}} - {a_{s}^{T}B_{s}a_{s}} + {2\quad \log \quad \pi_{0}}} \right\}.} & \quad \end{matrix}$

[0051] Again, f's presented above are functions of the ρ's, Γ's and of model parameters. It is to be appreciated that the complete E step still has to iterate between the calculation of q(x_(n)|s_(n)) and q(s_(n)|s_(n−1)). The parameter learning is quite similar to the MOG case and the results are summarized below: $\begin{matrix} {A_{s} = \left\lbrack {{\frac{1}{\sum\limits_{n}^{\quad}\quad \gamma_{s,n}}\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}}} \right)\left( {\sum\limits_{n}^{\quad}\quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}} \right)^{T}} -} \right.} & (27) \\ {\left. {\underset{n}{\overset{\quad}{\quad\sum}}\rho_{s,n}\quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}\gamma_{{s^{\prime}n} - 1}\rho_{s^{\prime},{n - 1}}^{T}}}} \right\rbrack \cdot} & \quad \\ {\quad \left\lbrack {\frac{1}{\sum\limits_{n}^{\quad}\quad \gamma_{s,n}}\left( {\sum\limits_{n}^{\quad}\quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}} \right)} \right.} & \quad \\ {\quad {\left( {\sum\limits_{n}^{\quad}\quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}} \right)^{T} -}} & \quad \\ {\left. \quad {\sum\limits_{n}^{\quad}\quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}{\gamma_{s^{\prime},{n - 1}}\left( {\Gamma_{s^{\prime},{n - 1}}^{T} + {\rho_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}^{T}}} \right)}}}} \right\rbrack^{- 1},} & \quad \\ {{a_{s} = {\frac{1}{\sum\limits_{n}^{\quad}\quad \gamma_{s,n}}\left( {{\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}}} - {A_{s}{\sum\limits_{n}^{\quad}\quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}}}} \right)}},} & (28) \\ {{NB}_{s}^{- 1} = {{\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\left( {\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}} \right)}} -}} & (29) \\ {\quad {{\left\lbrack {\overset{\quad}{\sum\limits_{n}}{\rho_{s,n}\left( {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}\gamma_{s^{\prime},{n - 1}}\rho_{{s^{\prime}n} - 1}^{T}}} \right)}} \right\rbrack A_{s}^{T}} - {\left( \quad {\sum\limits_{n}^{\quad}{\gamma_{s,{n - 1}}\rho_{s,n}}} \right)a_{s}^{T}} - A_{s}}} & \quad \\ {\quad {= {\left\lbrack {\sum\limits_{n}^{\quad}{\left( \quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}} \right)\rho_{s,n}^{T}}} \right\rbrack +}}\quad} & \quad \\ {\quad {{{A_{s}\left\lbrack {\sum\limits_{n}^{\quad}\quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}{\gamma_{s^{\prime},{n - 1}}\left( {\Gamma_{s^{\prime},{n - 1}} + {\rho_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}^{T}}} \right)}}}} \right\rbrack}A_{s}^{T}} + A_{s}}} & \quad \\ {\quad {= {{\left( {\sum\limits_{n}^{\quad}\quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}} \right)a_{s}^{T}} -}}} & \quad \\ {\quad {{a_{s}{\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}^{T}{a_{s}\left( {\sum\limits_{n}^{\quad}\quad {\sum\limits_{s^{\prime}}^{\quad}{\eta_{{s^{\prime}s},n}\gamma_{s^{\prime},{n - 1}}\rho_{s^{\prime},{n - 1}}}}} \right)}^{T}A_{s}^{T}}}} +}} & \quad \\ {\quad {{\left( {\sum\limits_{n}^{\quad}\quad \gamma_{s,n}} \right)a_{s}a_{s}^{T}},}} & \quad \\ {C_{s} = {\left\lbrack {{\frac{1}{\sum\limits_{n}^{\quad}\quad \gamma_{s,n}}\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}y_{n}}} \right)\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}}} \right)^{T}} - {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}y_{n}\rho_{s,n}^{T}}}} \right\rbrack \cdot}} & (30) \\ {\quad \left\lbrack {{\frac{1}{\sum\limits_{n}^{\quad}\quad \gamma_{s,n}}\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}}} \right)\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}}} \right)^{T}} -} \right.} & \quad \\ {\left. \quad {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\left( {\Gamma_{s^{\prime},{n - 1}}^{T} + {\rho_{{s^{\prime}n} - 1}\rho_{s^{\prime},{n - 1}}^{T}}} \right)}} \right\rbrack^{- 1},} & \quad \\ {{c_{s} = {\frac{1}{\sum\limits_{n}^{\quad}\quad \gamma_{s,n}}\left( {{\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}y_{n}}} - {C_{s}{\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}}}}} \right)}},} & (31) \\ {{ND}_{s}^{- 1} = {{\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}y_{n}y_{n}^{T}}} - {\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}y_{n}\rho_{s,n}^{T}}} \right)C_{s}^{T}} - {\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}y_{n}}} \right)c_{s}^{T}} -}} & (32) \\ {\quad {{C_{s}\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}y_{n}\rho_{s,n}^{T}}} \right)}^{T} + {{C_{s}\left\lbrack {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\left( {\Gamma_{s,n}^{- 1} + {\rho_{s,n}\rho_{s,n}^{T}}} \right)}} \right\rbrack}C_{s}^{T}} +}} & \quad \\ {\quad {{{C_{s}\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}}} \right)}c_{s}^{T}} - {c_{s}\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}y_{n}}} \right)}^{T} -}} & \quad \\ {\quad {{{c_{s}\left( {\sum\limits_{n}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}}} \right)}^{T}C_{s}^{T}} + {\left( {\sum\limits_{n}^{\quad}\quad \gamma_{s,n}} \right)c_{s}{c_{s}^{T}.}}}} & \quad \end{matrix}$

Speech Specific Issues

[0052] There are a number of important issues to be solved before the above algorithms can be applied to speech, and they are discussed here.

[0053] 1. Parameter Initialization:

[0054] It is important to initialize the parameters appropriately for an iterative local optimization procedure such as EM. The HDM approach of the system 100 enjoys the benefit of being closely related to speech-specific knowledge and some key parameters, especially the phone targets, can be reliably initialized from a formant synthesizer. Due to the small number of total parameters, others can be easily initialized by a small amount of hand-labeled VTR data.

[0055] 2. Segmental Constraint

[0056] The probabilistic form of the HDM allows phone transitions to occur at each frame, which is undesirable for speech. In training, a series of time-varying transition matrices π_(ss′) can be constructed based on the given phonetic transcript (or one created from a lexicon if only word transcripts are given) and some initial segmentation to impose the segmental constraint and force the discrete-state component of the model to be consistent with the phonetic transcript. In one example, the forced alignment phone boundary provided by HMM training is perturbed by three frames or to the middle of the adjacent phones, whichever is less. Such an approach also greatly reduces the number of possible phones that have to be summed up at each time step, including Equations (8)-(10), (22)-(24) and the calculation of all the f's. The segmental constraint in recognition is discussed below.

[0057] 3. Hidden Dynamics Recovery

[0058] It is both informative (especially for debugging) and desirable to recover the hidden VTR, and it is calculated by: $\begin{matrix} {{\hat{x}}_{n} = {\sum\limits_{s}^{\quad}\quad {\gamma_{s,n}\rho_{s,n}}}} & (33) \end{matrix}$

[0059] for both the MOG and HMM posterior assumptions.

[0060] 4. Recognition Strategy

[0061] Here we seek the most likely phone sequence given a sequence of observation. For the MOG case, this is simply accomplished by choosing the maximum γ at each frame; while for the HMM posterior, Viterbi decoding is performed by using γ and η, for example, the initialization and induction equation for the scoring are: $\begin{matrix} {{{V_{1}(s)} = \gamma_{s,1}},{{V_{n}\left( s^{\prime} \right)} = {\max\limits_{1 \leq s \leq S}{\left\lfloor {{V_{n - 1}(s)}\eta_{{ss}^{\prime},n}} \right\rfloor.}}}} & (34) \end{matrix}$

[0062] It is highly desirable to incorporate segmental (or minimal duration) constraint and language weighting in the recognition stage and this is implemented by Viterbi decoding with modified transition matrices for both cases (in MOG) the transition matrix is created from scratch while in HMM the changes are merged into η. Such a strategy allows HDM to be used in phone recognition directly without resorting to an N-best list provided by HMM.

Experimental Results

[0063] The results presented in this section are obtained by running the variational EM algorithm with MOG posterior. The correctness of implementation and effectiveness of the algorithm is first verified by simulation data. An example is shown in FIGS. 3 and 4. FIG. 3 shows one of the training tokens (10 in total) with three dynamic regimes (or phones). Only the observation y 340 is passed to the variational EM algorithm and the model parameters are initialized to be away from the true ones. After the algorithm converges, it learns the parameters quite well, for example, the true and estimated parameters for the state equation 300 are:

A=[0:9 0:85 0:95], Â=[0:8922 0:7212 0:8623],

u=[2:0 2:5 1:8], û=[2:0617 2:4011 1:8316],

[0064]FIG. 4 shows the hidden dynamics recovery 400 for a test sequence, and the underlying phone sequence is also recognized perfectly for this simple example. The broken line 410 represents the true speech; the solid line 420 represents the estimated speech in accordance with an aspect of the present invention.

[0065] Similar experiments have been performed on a small amount of speech data from the Switchboard database. FIG. 5 shows the hidden dynamics (VTR) recovery for one of the five training sentences used, and the same is shown for a short test sentence in FIG. 6. The broken lines 510, 520, 530 depict hand-labeled VTR; the solid lines 540, 550, 560 depict estimated VTR generated in accordance with an aspect of the present invention. Similarly, the broken lines 610, 620, 630 depicted hand-labeled VTR; the solid lines 640, 650, 660 depicted estimated VTR generated in accordance with an aspect of the present invention.

[0066] By applying simple minimum duration constraint and adjusting the variance level of silence (also modeled as a phone but it needs some special treatment since it doesn't really fit into the state equation of HDM), the phone sequence is recognized perfectly for this simple task.

[0067] While FIG. 1 is a block diagram illustrating components for the system 100, it is to be appreciated that the system 100, the input component 110 and/or the model component 120 can be implemented as one or more computer components, as that term is defined herein. Thus, it is to be appreciated that computer executable components operable to implement the system 100, the input component 110 and/or the model component 120, can be stored on computer readable media including, but not limited to, an ASIC (application specific integrated circuit), CD (compact disc), DVD (digital video disk), ROM (read only memory), floppy disk, hard disk, EEPROM (electrically erasable programmable read only memory) and memory stick in accordance with the present invention.

[0068] Turning briefly to FIGS. 7, 8 and 9, methodologies that may be implemented in accordance with the present invention are illustrated. While, for purposes of simplicity of explanation, the methodologies are shown and described as a series of blocks, it is to be understood and appreciated that the present invention is not limited by the order of the blocks, as some blocks may, in accordance with the present invention, occur in different orders and/or concurrently with other blocks from that shown and described herein. Moreover, not all illustrated blocks may be required to implement the methodologies in accordance with the present invention.

[0069] The invention may be described in the general context of computer-executable instructions, such as program modules, executed by one or more components. Generally, program modules include routines, programs, objects, data structures, etc. that perform particular tasks or implement particular abstract data types. Typically the functionality of the program modules may be combined or distributed as desired in various embodiments.

[0070] Referring to FIG. 7, a method 700 that facilitates modeling speech dynamics in accordance with an aspect of the present invention is illustrated. At 710, acoustic data is received. At 720, speech is recovered from the acoustic data based, at least in part, upon a speech model having parameters that describe unobserved speech dynamics and parameters that describe a relationship between an unobserved speech dynamic vector and an observed acoustic feature vector. At 730, a posterior distribution based on at least some of the model parameters is calculated. At 740, the model parameter(s) are modified based, at least in part, upon the calculated posterior distribution.

[0071] Next, turning to FIG. 8, a method 800 that facilitates modeling speech dynamics in accordance with an aspect of the present invention is illustrated. At 810, acoustic data is received. At 820, speech is recovered from the acoustic data based, at least in part, upon a speech model having parameters that describe unobserved speech dynamics and parameters that describe a relationship between an unobserved speech dynamics vector and an observed acoustic feature vector.

[0072] At 830, an approximation of a posterior distribution based upon a mixture of Gaussion posteriors is calculated. For example, calculation of the approximation of the posterior distribution can be based, at least in part, upon Equation (5). At 840, the model parameter(s) are modified based, at least in part, upon the calculated approximated posterior distribution and minimization of a Kullback-Liebler distance of the approximation from an exact posterior distribution.

[0073] Referring to FIG. 9, a method 900 that facilitates modeling speech dynamics in accordance with an aspect of the present invention is illustrated. At 910, acoustic data is received. At 920, speech is recovered from the acoustic data based, at least in part, upon a speech model having parameters that describe unobserved speech dynamics and parameters that describe a relationship between an unobserved speech dynamics vector and an observed acoustic feature vector.

[0074] At 930, an approximation of a posterior distribution based upon a mixture of hidden Markov model posteriors is calculated. For example, calculation of the approximation of the posterior distribution can be based, at least in part, upon Equation (20). At 940, the model parameter(s) are modified based, at least in part, upon the calculated approximated posterior distribution and minimization of a Kullback-Liebler distance of the approximation from an exact posterior distribution.

[0075] In order to provide additional context for various aspects of the present invention, FIG. 10 and the following discussion are intended to provide a brief, general description of a suitable operating environment 1010 in which various aspects of the present invention may be implemented. While the invention is described in the general context of computer-executable instructions, such as program modules, executed by one or more computers or other devices, those skilled in the art will recognize that the invention can also be implemented in combination with other program modules and/or as a combination of hardware and software. Generally, however, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular data types. The operating environment 1010 is only one example of a suitable operating environment and is not intended to suggest any limitation as to the scope of use or functionality of the invention. Other well known computer systems, environments, and/or configurations that may be suitable for use with the invention include but are not limited to, personal computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include the above systems or devices, and the like.

[0076] With reference to FIG. 10, an exemplary environment 1010 for implementing various aspects of the invention includes a computer 1012. The computer 1012 includes a processing unit 1014, a system memory 1016, and a system bus 1018. The system bus 1018 couples system components including, but not limited to, the system memory 1016 to the processing unit 1014. The processing unit 1014 can be any of various available processors. Dual microprocessors and other multiprocessor architectures also can be employed as the processing unit 1014.

[0077] The system bus 1018 can be any of several types of bus structure(s) including the memory bus or memory controller, a peripheral bus or external bus, and/or a local bus using any variety of available bus architectures including, but not limited to, an 8-bit bus, Industrial Standard Architecture (ISA), Micro-Channel Architecture (MSA), Extended ISA (EISA), Intelligent Drive Electronics (IDE), VESA Local Bus (VLB), Peripheral Component Interconnect (PCI), Universal Serial Bus (USB), Advanced Graphics Port (AGP), Personal Computer Memory Card International Association bus (PCMCIA), and Small Computer Systems Interface (SCSI).

[0078] The system memory 1016 includes volatile memory 1020 and nonvolatile memory 1022. The basic input/output system (BIOS), containing the basic routines to transfer information between elements within the computer 1012, such as during start-up, is stored in nonvolatile memory 1022. By way of illustration, and not limitation, nonvolatile memory 1022 can include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), or flash memory. Volatile memory 1020 includes random access memory (RAM), which acts as external cache memory. By way of illustration and not limitation, RAM is available in many forms such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and direct Rambus RAM (DRRAM).

[0079] Computer 1012 also includes removable/nonremovable, volatile/nonvolatile computer storage media. FIG. 10 illustrates, for example a disk storage 1024. Disk storage 1024 includes, but is not limited to, devices like a magnetic disk drive, floppy disk drive, tape drive, Jaz drive, Zip drive, LS-100 drive, flash memory card, or memory stick. In addition, disk storage 1024 can include storage media separately or in combination with other storage media including, but not limited to, an optical disk drive such as a compact disk ROM device (CD-ROM), CD recordable drive (CD-R Drive), CD rewritable drive (CD-RW Drive) or a digital versatile disk ROM drive (DVD-ROM). To facilitate connection of the disk storage devices 1024 to the system bus 1018, a removable or non-removable interface is typically used such as interface 1026.

[0080] It is to be appreciated that FIG. 10 describes software that acts as an intermediary between users and the basic computer resources described in suitable operating environment 1010. Such software includes an operating system 1028. Operating system 1028, which can be stored on disk storage 1024, acts to control and allocate resources of the computer system 1012. System applications 1030 take advantage of the management of resources by operating system 1028 through program modules 1032 and program data 1034 stored either in system memory 1016 or on disk storage 1024. It is to be appreciated that the present invention can be implemented with various operating systems or combinations of operating systems.

[0081] A user enters commands or information into the computer 1012 through input device(s) 1036. Input devices 1036 include, but are not limited to, a pointing device such as a mouse, trackball, stylus, touch pad, keyboard, microphone, joystick, game pad, satellite dish, scanner, TV tuner card, digital camera, digital video camera, web camera; and the like. These and other input devices connect to the processing unit 1014 through the system bus 1018 via interface port(s) 1038. Interface port(s) 1038 include, for example, a serial port, a parallel port, a game port, and a universal serial bus (USB). Output device(s) 1040 use some of the same type of ports as input device(s) 1036. Thus, for example, a USB port may be used to provide input to computer 1012, and to output information from computer 1012 to an output device 1040. Output adapter 1042 is provided to illustrate that there are some output devices 1040 like monitors, speakers, and printers among other output devices 1040 that require special adapters. The output adapters 1042 include, by way of illustration and not limitation, video and sound cards that provide a means of connection between the output device 1040 and the system bus 1018. It should be noted that other devices and/or systems of devices provide both input and output capabilities such as remote computer(s) 1044.

[0082] Computer 1012 can operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s) 1044. The remote computer(s) 1044 can be a personal computer, a server, a router, a network PC, a workstation, a microprocessor based appliance, a peer device or other common network node and the like, and typically includes many or all of the elements described relative to computer 1012. For purposes of brevity, only a memory storage device 1046 is illustrated with remote computer(s) 1044. Remote computer(s) 1044 is logically connected to computer 1012 through a network interface 1048 and then physically connected via communication connection 1050. Network interface 1048 encompasses communication networks such as local-area networks (LAN) and wide-area networks (WAN). LAN technologies include Fiber Distributed Data Interface (FDDI), Copper Distributed Data Interface (CDDI), Ethernet/IEEE 802.3, Token Ring/IEEE 802.5 and the like. WAN technologies include, but are not limited to, point-to-point links, circuit switching networks like Integrated Services Digital Networks (ISDN) and variations thereon, packet switching networks, and Digital Subscriber Lines (DSL).

[0083] Communication connection(s) 1050 refers to the hardware/software employed to connect the network interface 1048 to the bus 1018. While communication connection 1050 is shown for illustrative clarity inside computer 1012, it can also be external to computer 1012. The hardware/software necessary for connection to the network interface 1048 includes, for exemplary purposes only, internal and external technologies such as, modems including regular telephone grade modems, cable modems and DSL modems, ISDN adapters, and Ethernet cards.

[0084] What has been described above includes examples of the present invention. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the present invention, but one of ordinary skill in the art may recognize that many further combinations and permutations of the present invention are possible. Accordingly, the present invention is intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims. Furthermore, to the extent that the term “includes” is used in either the detailed description or the claims, such term is intended to be inclusive in a manner similar to the term “comprising” as “comprising” is interpreted when employed as a transitional word in a claim. 

What is claimed is:
 1. A system that facilitates modeling unobserved speech dynamics comprising: an input component that receives acoustic data; a model component that models speech based, at least in part, upon the acoustic data, the model component comprising model parameters which characterize aspects of the unobserved dynamics in speech articulation, and, which characterize a mapping relationship from the unobserved dynamic variables to observed speech acoustics, the model parameters modified based, at least in part, upon a variational learning technique, and a technique for decoding an underlying unobserved phone sequence of speech based, at least in part, upon a variational learning technique.
 2. The system of claim 1, modification of at least one of the model parameters being based upon a variational expectation maximization algorithm having an E-step and M-step.
 3. The system of claim 2, modification of at least one of the model parameters being based, at least in part, upon a mixture of Gaussian (MOG) posteriors based on a variational technique.
 4. The system of claim 3, the model component being based, at least in part, upon: ${{q\left( {s_{1:N},x_{1:N}} \right)} = {\prod\limits_{n}{{q\left( x_{n} \middle| s_{n} \right)}{q\left( s_{n} \right)}}}},$

where x is a state of the model, s is a phone index, n is a frame number, and, q is a probability approximation.
 5. The system of claim 2, modification of at least one of the model parameters being based, at least in part, upon a mixture of hidden Markov model (HMM) posteriors based on a variational technique.
 6. The system of claim 1, the model component selecting an approximate posterior distribution relating to the acoustic data and optimizing a posterior distribution by minimizing a Kullback-Liebler (KB) distance thereof to an exact posterior distribution.
 7. The system of claim 1, the model component being based, at least in part, upon a hidden dynamic model in the form of segmental switching state space model.
 8. The system of claim 7, the model component being based, at least in part, upon a switching state-space model for speech applications.
 9. The system of claim 7, the model component employing, at least in part, the state equation: x _(n) =A _(s) x _(n−1)+(I−A _(s))u _(s) +w, and the observation equation: y _(n) =C _(s) x _(n) +c _(s) +v, where n is a frame number, s is a phone index, x is the hidden dynamics, y is an acoustic feature vector, v is Gaussian white noise, w is Gaussian white noise and, C and c are the parameters for mapping from x to y.
 10. The system of claim 7, the model component being expressed, at least in part, in terms of probability distributions: p(s _(n) =s|s _(n−1) =s′)=π_(s′s), p(x _(n) |s _(n) =s,x _(n−1))=N(x _(n) |A _(s) x _(n−1) +a _(s) ,B _(s)), p(y _(n) |s _(n) =s,x _(n))=N(y _(n) |C _(s) x _(n) +c _(s) ,D _(s)), where π_(s′s) is a phone transition probability matrix, a_(s)=(I−A_(x))u_(s), N denotes a Gaussian distribution with mean and precision matrix as the parameters, C and c are the parameters for mapping from x to y, and, D represents the covariance matrix of the residual vector after the mapping.
 11. A speech recognition system employing the system of claim
 1. 12. A method that facilitates modeling speech dynamics comprising: recovering speech from acoustic data based, at least in part, upon a speech model having at least two sets of parameters, a first set of parameters describing unobserved speech dynamics and a second set of parameters describing a relationship between the unobserved speech dynamic vector and an observed acoustic feature vector; calculating a posterior distribution based on the above model parameters; and, modifying at least one of the model parameters based, at least in part, upon the calculated posterior distribution.
 13. The method of claim 12 further comprising receiving the acoustic data.
 14. A method that facilitates modeling speech dynamics comprising: recovering speech from acoustic data based, at least in part, upon a speech model in the form of segmental switching state space model calculating an approximation of a posterior distribution based on model parameters, the model parameters and the approximation based upon a mixture of Gaussians; and, modifying at least one of the model parameters based, at least in part, upon the calculated approximated posterior distribution and minimization of a Kullback-Liebler distance of the approximation from an exact posterior distribution.
 15. The method of claim 14 further comprising receiving the acoustic data.
 16. The method of claim 14, calculation of the approximation of the posterior distribution being based, at least in part, upon: ${{q\left( {s_{1:N},x_{1:N}} \right)} = {\prod\limits_{n}{{q\left( x_{n} \middle| s_{n} \right)}{q\left( s_{n} \right)}}}},$

where x is a state of the model, s is a phone index, n is a frame number, and, q is a posterior probability approximation.
 17. A method that facilitates modeling speech dynamics comprising: recovering speech from acoustic data based, at least in part, upon a speech model; calculating an approximation of a posterior distribution based on model parameters, the model parameters and the approximation based upon a hidden Markov model posteriors; and, modifying at least one of the model parameters based, at least in part, upon the calculated approximated posterior distribution and minimization of a Kullback-Liebler distance of the approximation from an exact posterior distribution.
 18. The method of claim 17, calculation of the approximation of the posterior distribution being based, at least in part, upon: ${{q\left( {s_{1:N},x_{1:N}} \right)} = {\prod\limits_{n = 1}^{N}{{q\left( x_{n} \middle| s_{n} \right)} \cdot {\prod\limits_{n = 2}^{N}{{q\left( s_{n} \middle| s_{n - 1} \right)} \cdot {q\left( s_{1} \right)}}}}}},$

where x is a state of the model, s is a phone index, n is a frame number, and, q is a posterior probability approximation.
 19. A data packet transmitted between two or more computer components that facilitates modeling of speech dynamics, the data packet comprising: data associated with recovered speech, the recovered speech being based, at least in part, a speech model based upon acoustic data and model parameters, and the model parameters including at least one articulation parameter and at least one duration parameter.
 20. A computer readable medium storing computer executable components of a system that facilitates modeling speech dynamics comprising: an input component that receives acoustic data; and, a model component that models speech based, at least in part, upon the acoustic data, the model component comprising model parameters including at least two sets of parameters, a first set of parameters that describe unobserved speech dynamics and a second set of parameters that describe a relationship between the unobserved speech dynamic vector and an observed acoustic feature vector, and, the model parameters modified based, at least in part, upon a variational learning technique.
 21. A system that facilitates modeling speech dynamics comprising: means for receiving acoustic data; and, means for modeling speech based, at least in part, upon the acoustic data, the means for modeling speech employing model parameters, the model parameters modified based, at least in part, upon a variational learning technique. 